/*
Theme Name: Andrew Newey
Theme URI: http://andrewnewey.co.uk/
Description: Child theme for use on Andrew Newey site. Layout for wide background strips, sidebar and footer in standard places. Based on Compass framework 4.1.
Author: Rachel McCollin
Template: compassframework4.1
Version: 1.2
Tags: two-columns, fluid, custom-header, custom-background, threaded-comments, sticky-post, translation-ready, microformats, editor-style
*/

@import url("../compassframework4.1/style.css");

/*Contents
1. Layout
2. Global elements including fonts and links
3. Colours
4. Header elements
5. Site-specific elements
6. Media queries
*/

/*
1. Layout
----------------------------------------------------------------------------------
*/

/* main layout */
html,
body,
.headerstrip,
.navstrip,
footer {
	margin: 0;
	width: 100%;
	overflow: auto;
}
header,
.menu.main,
#main,
#fatfooter,
#colophon {
	margin: 0 auto;
	width: 95%;
	max-width: 1200px;
}

/* Structure the header */

.headerstrip {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999999;
}

body {
	padding-top: 85px;
}

header {
	overflow: hidden;
	padding: 20px 0;
	position: relative;
}

#site-title {
	position: relative;
	width: 20%;
	clear: none;
	float: left;
	padding: 0;
	margin: 0;
}
#site-name,
#site-description {
	position: absolute;
	left: -99999px;
}
#header-right {
	width: 65%;
	float: right;
	position: relative;
	height: 55px;
}
.menu.top {
	position: absolute;
	top: 0;
	right: 0%;
	height: 20px;
	font-weight: 500;
}
.menu.top ul li {
	display: inline block;
	margin: 0 0 0 1.25em;
	float: left;
}
.menu.top a {
	padding: 0;
}

/*Structure the content and sidebars layout*/
#main {
	clear: both;
	/*overflow: auto;*/
	padding: 20px 0 85px 0;
}
/*main content and sidebar layout*/
#content {
	padding: 1.5em 312px 1.5em 0;
	width: auto;
	float: right;
	position: relative;
}
.primary {
	width: 275px;
	margin-left: -275px;
	position: relative;
	left: 275px;
	float: left;
	clear: none;
	padding: 3em 0 0;
}


/*alternative styling for pages with no sidebar*/
.page-template-onecolumn-page-php #content, .single-attachment #content {
	float: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}
/*alternative styling for page with forms or wide gallery images*/
.page-template-form-page-php #content,
.page-template-contact-page-php #content,
.page-template-ordering-page-php #content,
.page-template-expeditions-page-php #content,
.page-template-sidebar-gallery-wide-php #content {
	width: 54.5%;
	padding-left: 0;						
}
.page-template-form-page-php .primary,
.page-template-contact-page-php .primary,
.page-template-ordering-page-php .primary,
.page-template-expeditions-page-php .primary,
.page-template-sidebar-gallery-wide-php .primary {
	width: 42.5%;
	margin-left: 0;
	padding-left: 0;
	left: 0;
}
.primary .widget-container {
	padding: 1em 0;
}


/* Structure the footer area */
#fatfooter,
footer {
	clear: both;
}
footer {
	overflow: hidden;
	height: 85px;
}
footer .widget-area {
	padding-top: 30px;
}
footer .widget-area.first {
	float: left;
	width: 50%;
}
footer .widget-area.second {
	width: 50%;
	float: right;
}
footer .second img,
footer .second span {
	float: right;
	clear: none;
	margin-left: 14px;
}


/* sticky footer 
html, 
body.page-template-form-page-php,
body.page-template-contact-page-php,
body.page-template-ordering-page-php,
body.page-template-sidebar-gallery-wide-php {
	height: 100%;
}
.page-template-form-page-php #container,
.page-template-contact-page-php #container,
.page-template-ordering-page-php #container,
.page-template-sidebar-gallery-wide-php #container {
	min-height: 100%;
}
.page-template-form-page-php #main,
.page-template-contact-page-php #main,
.page-template-ordering-page-php #main,f
.page-template-sidebar-gallery-wide-php #main {
	overflow: auto;
	padding-bottom: 66px;
}
.page-template-form-page-php footer,
.page-template-contact-page-php footer,
.page-template-ordering-page-php footer,
.page-template-sidebar-gallery-wide-php footer {
	position: relative;
	margin-top: -66px;
	clear: both;
}
*/

/*
2. Global elements including fonts
----------------------------------------------------------------------------------
*/

/* Main global 'theme', fonts and typographic styles */

body {
	font-size: 14px;
	line-height: 1.8em;
    	font-family: "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;          
}
code {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
.menu.top {
	font-size: 0.9em;
}
blockquote {
	font-style: italic;
	padding: 0 3em;
}
input[type="text"],
textarea {
	box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	-moz-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	padding: 2px;
}
header .menu,
h1,
.page-title {
text-transform: uppercase;	
}
p {
	margin: 0;
	padding-bottom: 1em;
}
#content p {
	text-align: justify;
}
footer {
	font-size: 0.9em;
}
figcaption {
	font-style: italic;
}
ul {
	list-style: none;
}

/*sidebar lists styling */
.primary ul {
	padding: 0;
}
.primary ul li {
	padding-bottom: 1em;
}

/* Headings */

h1, h2, h3, h4, h5, h6 {
}
h1 {
	font-size: 1.57em; /*22px*/
}
h1.entry-title,
h1.page-title {
	font-size: 1.1em;
	color: #fff;
}
h2 {
	font-size: 1.28 em; /*18px*/
}
h3 {
	font-size: 1.14em; /*16px*/
}
h4 {
	font-size: 1em;
	font-style: bold;
}
h5{
	font-size: 1em;
	font-style: italic;
}
h6 {
	font-size: 1em;
	font-style: normal;
}

/*
3. Colours
----------------------------------------------------------------------------------
*/


/* Global colours */
html, body {
	background: #fff;
	color: #505050;
}
abbr,
acronym {
	border-bottom: 1px dotted #333;
}
input[type="text"],
textarea {
	background: #eee;
	border: 1px solid #000;
}
p em, p strong {
	color: #505050;
}
p figcaption em {
	color: #505050;
}

/* Links (except menu) */

a:link,
a:visited {
	color: #505050;
	text-decoration: none;
}
a:active,
a:hover {
	text-decoration: underline;
}
.page-title a:link,
.page-title a:visited,
.entry-title a:link,
.entry-title a:visited {
	color: #fff;
	text-decoration: none;
}
.page-title a:active,
.page-title a:hover,
.entry-title a:active,
.entry-title a:hover {
	text-decoration: none;
	color: #fff;
}

/* Header colours */
.headerstrip {
	border-bottom: 1px solid #505050;
}

/* Menu colours */
.menu.top,
.menu.top ul ul a,
.menu.top li:hover > a,
.menu.top ul ul :hover > a {
	background: none;
}
.menu.top a {
	color: #505050;
}
.menu.top li:hover > a,
.menu.top ul ul :hover > a,
* html.menu .top ul li a:hover {
	text-decoration: underline;
	color: #505050;
}
.menu.top ul li.current_page_item > a,
.menu.top ul li.current-menu-ancestor > a,
.menu.top ul li.current-menu-item > a,
.menu.top ul li.current-menu-parent > a,
* html.menu .top ul li.current_page_item a,
* html.menu .top ul li.current-menu-ancestor a,
* html.menu .top ul li.current-menu-item a,
* html.menu .top ul li.current-menu-parent a {
	text-decoration: none;
	color: #505050;
}
	

/* Content colours */
h1.entry-title,
h1.page-title {
	border-bottom: 1px solid #fff;
	padding: 1em 0 0.25em 0;
	display: inline;
}
.news #content article {
	border-top: 1px solid #666;
	padding-top: 0.5em;
}
#content article:first-child {
	border-top: none;
}

/* Titles and headings */


/* Borders */

#content table,
#content tr td,
.entry-content fieldset {
	border: 1px solid #505050;
}
.category-gallery .size-thumbnail img {
	border: 10px solid #eee;
}
#comments .pingback,
.commentlist li.comment {
	border-bottom: 1px solid #333;
}


/* Table content */

#content tr th,
#content thead th {
	color: #fff;
}
#content tr.odd td {
	background: none;
}


/* Entries */



/* Widgets */

.primary .widget-container {
	border-bottom: 1px solid #505050;
}
.page-template-form-page-php .primary .widget-container,
.page-template-contact-page-php .primary .widget-container,
.page-template-ordering-page-php .primary .widget-container,
.page-template-expeditions-page-php .primary .widget-container,
.page-template-sidebar-gallery-narrow-php .primary .widget-container,
.page-template-sidebar-gallery-wide-php .primary .widget-container {
	border-bottom: none;
}
.primary a:link,
.primary a:visited {
	color: #505050;
}
.primary #text-14 img /* social media icons */ {
	margin: 0 20px 30px 20px;
}

/* Footer */
footer {
	color: #505050;
	border-top: 1px solid #505050;
}
footer a:link,
footer a:visited {
	color: #505050;
}

/* 4. Header elements
-------------------------------------------------------------- */




/* 5. Site-specific elements
-------------------------------------------------------------- */

/* replace margins with padding in gravity forms - to fix scrollbar as a result of sticky footer */
.gform_wrapper {
	margin: 0 !important;
	padding: 0 0px !important;
}
.gform_wrapper .gform_heading {
	margin-bottom: 0 !important;
	padding-bottom: 18px !important;
}
.gform_wrapper .top_label .gfield_label {
	padding: 0 0 4px 0 !important;
	margin: 0 !important;
}
.gform_wrapper .ginput_complex label, .gform_wrapper .gfield_time_hour label, .gform_wrapper .gfield_time_minute label, .gform_wrapper .gfield_date_month label, .gform_wrapper .gfield_date_day label, .gform_wrapper .gfield_date_year label, .gform_wrapper .instruction {
	padding: 3px 0 !important;
	margin: 0 !important;
}
.gform_wrapper .gform_footer {
	padding: 5px 0 30px 0 !important;
	margin: 0 !important;
}
/* gallery fixes*/
.ngg-galleryoverview {
	text-align: left;
	overflow: hidden !important;
	margin-top: 0 !important;
	width: 109.6667%;
	clear: both;
	display: block !important;
	padding-top: 0px;
}
.ngg-gallery-thumbnail {
	float: left;
	text-align: left;
	margin: 0 10% 0 0 !important;
	width: 95% !important;
	padding-bottom: 10%;
}
.ngg-slideshow {
	width: 100% !important;
}
.scrollgallery {
	max-width: 100%;
}
#content .imagearea img {
	border: none;
	height: auto !important;
	max-width: 100% !important;
}
/* set rounded corners on all forms input types */
input, textarea {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* grid for contact details on contact page */
.contactOptions .contact {
	width: 30%;
	display: block;
	float: left;
	margin: 0 0 0 1%;
}
.contactOptions .contact.left {
	margin-left: 0;
}
.contactOptions h5 {
	color: #c0c0c0;
}

/* sidebar displaying custom fields in wide and narrow image sidebar templates */
.primary .post-meta .post-meta-key {
	display: none;
}
.primary .post-meta img {
	padding-bottom: 20px;
	max-width: 100%;
	float: left;
}

/*RSS subscribe box */
form.rss {
	line-height: 1.4em;
	padding-bottom: 1em;
}
form.rss input {
	outline-style: none;
	font-size: 11px;
	font-family: inherit;
	padding: 2px 0;
	letter-spacing: normal;
}
form.rss input[type="text"] {
	width: 200px;
}
form.rss input[type="submit"] {
	width: 50px;
	margin-left: 7px;
}

/* Home page layout */
.home #content {
	padding-top: 10px;
}
#content ul.imagelinks {
	list-style-type: none;
	margin: 0;
	padding: 0 0 0 0;
}
#content ul.imagelinks li {
	float: left;
	width: 32.4%;
	margin: 0 1.3% 0 0;
}
#content .imagelinks li.last {
	margin-right: 0;
	    padding-top: 0px;
        padding-bottom: 0px;   
}

/* slideshow */
.slideshow {
	position: relative;
	padding-bottom: 44.5%;
	height: 0;
}

.slideshow div {
	position: absolute;
	top: 0;
	left: 0;
	width: 125% !important;
	height: 85% !important;
}

/* links in portfolio pages */
.portfolio-links {
	text-transform: uppercase;
	font-size: 1.14em;
	color: #505050;
	display: block;
	text-align: center;
}
.portfolio-links a:link,
.portfolio-links a:visited {
	color: #505050;
}
.portfolio-links a:hover,
.portfolio-links a:active {
	color: #fff;
}

/* ==========================================================================
   Responsive video embeds
   ========================================================================== */

/*
 * embed object wrapper
 */

.video-container {
	position: relative;
	padding-bottom: 52.6%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

/*
 * embed iframe object
 */

.video-container iframe,
.video-container object,
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*
 * make sure elements don't extend over wrapper
 */

.entry-content img,
.entry-content iframe,
.entry-content object,
.entry-content embed {
   max-width: 100%;
}

/* ==========================================================================
   Responsive fixes
   ========================================================================== */

/*
 * Styles in this area will only apply from 751px and up
 */

@media screen and (min-width: 751px) {

	/*
	 * Change post area width to fluid
	 */

	#content {
		width: 68%;
		padding: 1.2em 0 3.5em 0;
	}

	/*
	 * Change widget area width to fluid
	 */ 

	.primary {
		width: 28%;
	}
}



/* 6. Media queries
-------------------------------------------------------------- */

@-webkit-keyframes reset {
0% {
    opacity: 0;
}
100% {
    opacity: 0;
}
}
 
@-webkit-keyframes fade-in {
0% {
    opacity: 0;
}
60% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}

.mobileOnly {
	display:none;
	-webkit-animation-name: reset, fade-in;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
	animation-name: reset, fade-in;
    animation-duration: 0.5s;
    animation-timing-function: linear;
    animation-iteration-count: 1;
}
.desktopOnly {
	display:block;
	-webkit-animation-name: reset, fade-in;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
	animation-name: reset, fade-in;
    animation-duration: 0.5s;
    animation-timing-function: linear;
    animation-iteration-count: 1;
}

#site-title {
	margin-top:7px;
	max-width:50%;
}

#header-mobile-notice {
	text-transform: uppercase;
	text-align: center;
}
@media screen and (min-width: 1400px) {
	#main {
		min-height: 700px;
	}
}

@media screen and (max-width: 750px) {
	.primary {
		width: 220px;
		margin-left: -220px;
		position: relative;
		left: 220px;
		float: left;
		clear: none;
		padding: 3em 0 0;
	}
	#content {
		padding: 2.8em 240px 3.5em 0;
	}
	.primary #text-14 img {
		margin: 0 10px 20px 10px;
	}
	#container {	
		width: 100%;
	}
	#site-title, #header-right, .menu.top {
		float:none;
		position:static;
		width:50%;
	}
	.menu.top ul li {
		margin: 0 1.25em 0 0;
	}
	.slideshow {
		max-width:100%;
	}
	footer .widget-area.first, footer .widget-area.second {
		float: none;
		width: 100%;
	}
	footer {
		height:auto;
	}
	footer .first img, footer .first span {
		float: right;
		clear: none;
		margin-left: 20px;
		margin-right:0;
		margin-bottom: 20px;
	}
	footer .second img, footer .second span {
		float: left;
		clear: none;
		margin-right: 20px;
		margin-left:0;
		margin-bottom: 20px;
	}
	#site-title img {
		max-width: 50%;
	}
	

	.page-template-form-page-php #content, .page-template-contact-page-php #content, .page-template-ordering-page-php #content, .page-template-expeditions-page-php #content, .page-template-sidebar-gallery-wide-php #content {
		width: 100%;
		padding-left: 0;
		padding-bottom: 0;
	}

	.page-template-form-page-php .primary, .page-template-contact-page-php .primary, .page-template-ordering-page-php .primary, .page-template-expeditions-page-php .primary, .page-template-sidebar-gallery-wide-php .primary {
		width: 100%;
		float:none;
		margin-left: 0;
   		padding-top: 0;
		left: 0;
	}
	.primary .post-meta img {
		padding-bottom: 20px;
		max-width: 100%;
		float: none;
	}
	.primary .post-meta a {
		text-align: center;
		display: block;
	}
	#header-right {
		height: 0;
	}
	header .menu {
		padding-left: 0;
		text-align: center;
	}
	.menu.top ul li {
		display:inline-block;
		float:none;
	}
	
	.ngg-galleryoverview {
		width:100% !important;
	}
	.ngg-gallery-thumbnail {
		margin: 0 !important;
		width: 100% !important;
	}
	.menu.mobileOnly {
		font-size: 100%;
		line-height: 2em;
		text-transform: uppercase;
	}
	.menu.mobileOnly ul {
		padding: 0;
		margin: 0 0 50px;
		text-transform: uppercase;
		text-align: center;
	}
	.menu.mobileOnly a:link, .menu.mobileOnly a:visited {
		color: #505050;
		text-decoration: none;
		text-transform: uppercase;
	}
	.menu.mobileOnly a:hover, .menu.mobileOnly a:active {
		color: #505050;
		text-decoration: none;
	}
.menu.mobileOnly ul li.current_page_item > a,
.menu.mobileOnly ul li.current-menu-ancestor > a,
.menu.mobileOnly ul li.current-menu-item > a,
.menu.mobileOnly ul li.current-menu-parent > a,
* html.menu .top ul li.current_page_item a,
* html.menu .top ul li.current-menu-ancestor a,
* html.menu .top ul li.current-menu-item a,
* html.menu .top ul li.current-menu-parent a {
	text-decoration: none;
	color: #505050;
	}
	#main {
		padding: 0;
		z-index: 9999;
	}
	#content ul.imagelinks li {
		float: none;
		width: 100%;
		margin: 0 0 0 0;
		text-align:center;
		padding-right: 0;
		padding-bottom: 0;
	}

	.thumbareaContent img {
		max-height: 60px;
		outline: none;
		border: none;
	}
	#site-title {
		margin-top:10;
	}
	.mobileOnly {
		display:block;
	}
	.desktopOnly {
		display:none;
	}
	#content .imagelinks a img {
		margin-left: auto;
		float: none;
		display: block;
		margin-right: 0;
		padding-top:0;
		padding-right: 0;
		padding-bottom: 0;
	}
	.imagelinks a {
		display: block;
		text-align: center;
		padding-top:0;
		padding-right: 0;
		padding-bottom: 0;
	}
	#content ul.imagelinks {
		text-align: center;
		width: 100%;
		padding-top:0;
		padding-right: 0;
		padding-bottom: 0;
	}
	footer .widget-area {
		padding-top: 10px;
	}
	#content .ngg-gallery-thumbnail-box {
		width: 50% !important;
	}
	#content .ngg-gallery-thumbnail {
		float: none ;
		text-align: center;
		margin: 0;
		padding-bottom:30px;
		width: 100%;
	}
	#content .ngg-gallery-thumbnail a {
		display:block;
		text-align:center;
	}
	#content .ngg-gallery-thumbnail img {
		display: block;
		position: static;
		margin: 0 auto;
	}
}
@media screen and (max-width: 750px) {
#content, .primary {
	
		margin-right: auto;
		width: auto;
		margin-left: auto;
		padding-left: 0;
		float:none;
		position:static;
	}
	
	#main{
		display: flex; 
		flex-flow: column;
	}
	
	#content{
		order: 2;
	}
	
	.primary.widget-area{
		order: 1;
	}
	
	.blog #content, .page-id-126 #content, .page-id-15247 #content, .page-id-4705 #content{
		order: 1;
		padding-right: 0;
	}
	
	.blog .primary.widget-area, .page-id-126 .primary.widget-area, .page-id-15247 .primary.widget-area, .page-id-4705 .primary.widget-area{
		order: 2;
	}
	
	.page-template-sidebar-gallery-wide #content{
		padding-top: 0;
		padding-right: 0;
	}
}

@media screen and (max-width: 480px) {
	#content .ngg-gallery-thumbnail-box {
		width: 100% !important;
	}
	#content .ngg-gallery-thumbnail {
		float: none ;
		text-align: center;
		margin: 0 auto !important;
		padding-bottom:30px;
		width: 100%;
	}

	h1.entry-title,
	h1.page-title {
	font-size: 1.0em;
	}
	.home #content {
		padding: 15px 0;
		z-index: 9999;
	}
	.mobileOnly {
		display:block;
	}
	.desktopOnly {
		display:none;
	}
}


#shDisplay div#shCount {
	display: none !important;
}

#shName {
	padding-top: 5px !important;
	color: #505050 !important;
}

.mobile-menu {
	display: none;
}

.burger {
	display: none;
	width: 30px;
	height: 15px;
	flex-direction: column;
	justify-content: space-between;
	cursor: pointer;
	margin-right: 15px;
}

.burger span {
	display: block;
	height: 2px;
	background: #333;
	border-radius: 2px;
	transition: 0.3s ease;
}

.burger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.burger span:nth-child(2) {
display: none;
}

.burger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px);
}
@media screen and (max-width: 750px) {
header {
	    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
	
	header #site-title {
		width: auto;
		max-width: 85%;
	}
	
	header .burger {
		display: flex;
	}
	
	.mobile-menu.active {
		display: flex;
		position: fixed;
		top: 50px;
		left: 0;
		right: 0;
		z-index: 99999;
		background: #fff;
		bottom: 0;
		align-items: center;
		justify-content: center;
		padding: 10px;
	}

	.mobile-menu li {
		padding: 20px 0;
		text-align: center;
	}

	.mobile-menu li a {
		font-size: 25px;
		text-transform: uppercase;
	}
}

div#shShutter {
	    z-index: 9999999 !important;
}

div#shDisplay {
		   z-index: 99999999 !important;
}